Career 2025 2024 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008
All Rounds Final 1/2 1/4 First Second Third Fourth Pre-q Rubber 1 Rubber 2 Rubber 3 Rubber 4 Rubber 5 Robin Bronze Q3 N/A Q2 Q1 ER Q4 CR QF Q5 N/A
All Courts Acrylic N/A Clay Grass Carpet Hard I.hard
All Tour Australian Open - Melbourne French Open - Paris Wimbledon - London Open 13 Provence - Marseille Hangzhou Open - Hangzhou France F16 Switzerland F3 Bosnia & Herzegovina F2 Croatia F8 France F14 Bosnia/Herzegovina F6 Bosnia/Herzegovina F1 Bosnia & Herzegovina F2 France F4 Czech Republic F1 France F8 France F9 Germany F9 Italy F18 Italy F19 Italy F20 Germany F12 Poland F5 France F14 France F16 France F17 Croatia F7 Croatia F8 Dominican Republic F1 Dominican Republic F2 Dominican Republic F3 USA F1 USA F2 Israel F3 Germany F4 Croatia F1 Croatia F2 France F4 France F5 Italy F3 Italy F4 Italy F6 France F7 Italy F7 Bosnia & Herzegovina F2 Bosnia & Herzegovina F3 Bosnia & Herzegovina F5 Netherlands F1 France F8 Serbia F1 Serbia F2 France F10 Serbia F3 Italy F18 Lithuania F1 Latvia F1 Serbia F7 Germany F12 Croatia F7 Croatia F8 Germany F13 France F14 Croatia F9 Germany F16 Croatia F12 Croatia F13 France F20 Croatia F14 Turkey F32 Turkey F33 China F1 China F2 Turkey F3 Turkey F4 Croatia F1 Italy F1 Italy F2 Greece F3 Bosnia & Herzegovina F1 Bosnia & Herzegovina F2 Bosnia & Herzegovina F3 Bosnia & Herzegovina F5 Germany F7 France F12 Italy F20 France F19 Israel F10 Croatia F11 Israel F11 Croatia F12 Turkey F2 France F2 Germany F4 Croatia F1 Croatia F2 USA F5 USA F6 Italy F1 Italy F5 Bosnia & Herzegovina F4 Serbia F3 Croatia F12 Germany F7 France F11 Bulgaria F1 Poland F6 Croatia F10 St. Remy Challenger Aachen Challenger Quimper Challenger Cherbourg Challenger Barletta Challenger Scheveningen Challenger St. Remy Challenger Orleans Challenger Eckental Challenger Heilbronn Challenger Cherbourg Challenger Le Gosier Challenger Blumenau Challenger Milan Challenger San Benedetto Challenger San Marino Challenger Como Challenger Brasov Challenger Trnava Challenger Lermontov Challenger Sarajevo Challenger Santos Challenger Kosice Challenger Poznan Challenger Recanati Challenger Tampere Challenger Segovia Challenger Liberec Challenger Kazan Challenger St. Remy Challenger Banja Luka Challenger Orleans Challenger Rennes Challenger Casablanca Challenger Yokohama Challenger Toyota Challenger Cherbourg Challenger Irving Challenger Leon Challenger Mersin Challenger Scheveningen Challenger San Benedetto Challenger St. Remy Challenger Geneva Challenger Morelos Challenger Irving Challenger San Benedetto Challenger Alphen Challenger Mohammedia Challenger Sarajevo Challenger Guadalajara Challenger Alphen Challenger Mohammedia Challenger BH Indoor Sarajevo - Sarajevo St. Brieuc Challenger Santo Domingo Challenger Tampere Challenger New Haven Challenger Geneva Challenger Zadar Challenger Zagreb Challenger Karlsruhe Challenger Istanbul Challenger Orleans Challenger Nottingham Challenger Cordenons Challenger Prostejov Challenger Rimouski Challenger Moscow Challenger Poznan Challenger Bergamo Challenger Cherbourg Challenger Nottingham-2 Challenger Anning Challenger Casablanca Challenger Rome Challenger Prostejov Challenger Orleans Challenger Tashkent Challenger Casablanca Challenger Trnava Challenger Mouilleron-Le-Captif Challenger Braunschweig Challenger Quimper Challenger Lisbon Challenger Blois Challenger Rennes Challenger Orleans Challenger Meknes Challenger Kenitra Challenger Mouilleron-Le-Captif Challenger Ortisei Challenger Helsinki Challenger Bordeaux Challenger Ortisei Challenger Rome Challenger Guayaquil Challenger Wroclaw Challenger Salzburg-Anif Challenger Tulln Challenger Cherbourg Challenger Biel Challenger Kobe Challenger Santo Domingo Challenger Ottignies-Louvain-la-Neuve Challenger Szekesfehervar Challenger Tunis Challenger Quimper Challenger Brest Challenger Quimper Challenger Montemar Challenger Canberra Challenger Cap Cana Challenger Zadar Challenger Tallahassee Challenger Orleans Challenger Quimper Challenger Lyon Challenger Santos Challenger Meerbusch Challenger Bordeaux Challenger Sao Paulo Challenger Matsuyama Challenger Noumea Challenger Salzburg Challenger Mallorca Challenger Arad Challenger Genova Challenger Manama Challenger Wuhan Challenger Aptos Challenger Rome 2 Challenger Nottingham 2 Challenger Trieste Challenger Meerbusch Challenger Orleans Challenger Barcelona Challenger Bergamo Challenger Bratislava Challenger Helsinki Challenger Pau Challenger Lille Challenger Lugano Challenger Mauthausen Challenger Roanne Challenger Surbiton Challenger Ilkley Challenger Cordenons Challenger Banja Luka Challenger Sibiu Challenger Yokohama Challenger Oeiras 1 Challenger Oeiras 2 Challenger Antalya Challenger Maia Challenger Ostrava Challenger Quimper Challenger Mouilleron-Le-Captif Challenger Bergamo Challenger Danderyd Challenger Valencia Challenger Pau Challenger Pau Challenger Naples Challenger Ostrava Challenger Cherbourg Challenger Bordeaux Challenger Naples Challenger Tunis Challenger Ilkley Challenger Braunschweig Challenger St. Tropez Challenger Bratislava Challenger Bendigo Challenger Open de Moselle - Metz Prague Challenger Mouilleron-Le-Captif Challenger Split Challenger Barcelona Challenger Lisbon Challenger Zagreb Challenger Como Challenger Oeiras 3 Challenger Open 13 - Marseille Sibiu Challenger Mouilleron-Le-Captif Challenger Moselle Open - Metz Apia International - Sydney Brest Challenger Bendigo Challenger Alphen Challenger Bergamo Challenger St. Remy Challenger Petange Challenger Banja Luka Challenger Samarkand Challenger Rennes Challenger Santo Domingo Challenger Heilbronn Challenger Moselle Open - Metz Arad Challenger Kosice Challenger Bratislava 2 Challenger If Stockholm Open - Stockholm Swiss Indoors Basel - Basel Lille Challenger Ortisei Challenger Gerry Weber Open - Halle Orleans Challenger Winston-Salem Open - Winston-Salem San Luis Potosi Challenger Rakuten Japan Open - Tokyo Swiss Indoors Basel - Basel Brisbane International - Brisbane PBZ Zagreb Indoors - Zagreb Geneva Open - Geneva Topshelf Open - 's-Hertogenbosch Memphis Open - Memphis Dallas Challenger Delray Beach Open - Delray Beach Abierto Mexicano Telcel - Acapulco BRD Nastase Tiriac Trophy - Bucharest TEB BNP Paribas Istanbul Open - Istanbul Cherbourg Challenger Winston-Salem Open - Winston-Salem Erste Bank Open - Vienna Mercedes Cup - Stuttgart Bet-at-home Open - Hamburg Shenzhen Open - Shenzhen Sydney International - Sydney ABN AMRO World Tennis Tournament - Rotterdam Studena Croatia Open - Umag AEGON Championships - London Plava Laguna Croatia Open - Umag Kremlin Cup - Moscow St. Petersburg Open - St. Petersburg Erste Bank Open - Vienna Qatar ExxonMobil Open - Doha Open 13 Provence - Marseille Generali Open - Kitzbuhel bett1HULKS Championships - Cologne Astana Open - Nur-Sultan ABN AMRO World Tennis Tournament - Rotterdam Open 13 Provence - Marseille Abierto Mexicano Telcel - Acapulco St. Petersburg Open - St. Petersburg Kremlin Cup - Moscow Aircel Chennai Open - Chennai Sao Paulo Challenger Furth Challenger Grand Prix Hassan II - Casablanca Mons Challenger Bratislava Challenger Ortisei Challenger BRD Nastase Tiriac Trophy - Bucharest Open de Nice Cote d'Azur - Nice Brisbane International - Brisbane Nordea Open - Bastad Moselle Open - Metz European Open - Antwerp ABN AMRO World Tennis Tournament - Rotterdam Delray Beach Open - Delray Beach St. Brieuc Challenger Konzum Croatia Open - Umag Moselle Open - Metz Winston-Salem Open - Winston-Salem Boss Open - Stuttgart Lima Challenger Abierto Mexicano - Los Cabos Dubai Duty Free Tennis Championships - Dubai Antalya Cup - Antalya Abierto Mexicano - Los Cabos Poznan Challenger Winston-Salem Open - Winston-Salem Moselle Open - Metz St. Petersburg Open - St. Petersburg Shenzhen Open - Shenzhen Guadalajara Challenger Erste Bank Open - Vienna Open Sud de France - Montpellier ABN AMRO World Tennis Tournament - Rotterdam Gazprom Hungarian Open - Budapest Open Parc - Lyon Libema Open - 's-Hertogenbosch Vercelli Challenger Winston-Salem Open - Winston-Salem Kremlin Cup - Moscow Dubai Duty Free Tennis Championships - Dubai Erste Bank Open - Vienna Ostrava Challenger Winston-Salem Open - Winston-Salem Anytech365 Andalucia Open - Marbella Open Sud de France - Montpellier Seville Challenger Serbia Open - Belgrade Millennium Estoril Open - Estoril St. Tropez Challenger Andria Challenger Firenze Open - Florence Qatar ExxonMobil Open - Doha Millennium Estoril Open - Estoril Plava Laguna Croatia Open - Umag Rovereto Challenger Mersin Challenger Mercedes Cup - Stuttgart Bucharest Open - Bucharest Genova Challenger Rio Open - Rio de Janeiro Grand Prix Hassan II - Marrakech Tiriac Open - Bucharest Boss Open - Stuttgart Open 13 - Marseille European Open - Brussels Nottingham 1 Challenger UNICEF Open - 's Hertogenbosch Gerry Weber Open - Halle Sarajevo Challenger Leon Challenger Brisbane International - Brisbane Bordeaux Challenger Buenos Aires Challenger Open Sud de France - Montpellier Kosice Challenger Open 13 - Marseille Budapest Challenger Canberra Challenger Beijing Challenger Moselle Open - Metz Malaysian Open - Kuala Lumpur Kremlin Cup - Moscow If Stockholm Open - Stockholm Orleans Challenger Aircel Chennai Open - Chennai Nordea Open - Bastad Open 13 - Marseille Erste Bank Open - Vienna TEB BNP Paribas Istanbul Open - Istanbul Itajai Challenger Ostrava Challenger Porto Challenger Napoli Challenger Bordeaux Challenger Vegeta Croatia Open - Umag Bet-at-home Open - Hamburg Aix En Provence Challenger European Open - Antwerp San Benedetto Challenger Winston-Salem Open - Winston-Salem Almaty Open - Almaty Moselle Open - Metz Rakuten Japan Open - Tokyo Qatar ExxonMobil Open - Doha Garanti Koza Sofia Open - Sofia Open de Nice Cote d'Azur - Nice Tunis Challenger Aegon Nottingham Open - Nottingham Aix En Provence Challenger Granby Challenger Nature Valley International - Eastbourne Konzum Croatia Open - Umag Braunschweig Challenger Erste Bank Open - Vienna Tampere Challenger Kremlin Cup - Moscow Bratislava Challenger Open Sud de France - Montpellier Garanti Koza Sofia Open - Sofia Memphis Open - Memphis New York Open - New York Dubai Duty Free Tennis Championships - Dubai Forli 5 Challenger Barcelona Open BancSabadell - Barcelona Hungarian Open - Budapest TEB BNP Paribas Istanbul Open - Istanbul AEGON Championships - London Kenitra Challenger Hall of Fame Tennis Championships - Newport St. Petersburg Open - St. Petersburg Perugia Challenger Como Challenger Erste Bank Open - Vienna Open Sud de France - Montpellier Hamburg European Open - Hamburg Vancouver Challenger Open 13 Provence - Marseille Gazprom Hungarian Open - Budapest Prague II Challenger Surbiton Challenger Braunschweig Challenger Banja Luka Challenger Grand Prix Hassan II - Marrakech Plava Laguna Croatia Open - Umag Marbella Challenger Belgrade Challenger Geneva Open - Geneva Noventi Open - Halle Turkish Airlines Open Antalya - Antalya SkiStar Swedish Open - Bastad Moselle Open - Metz Split Challenger Zhuhai Open - Zhuhai China Open - Beijing Open Sud de France - Montpellier Abierto Mexicano Telcel - Acapulco bett1HULKS Indoors - Cologne Bordeaux Challenger Great Ocean Road Open - Melbourne Open Sud de France - Montpellier Zug Challenger Sibiu Challenger Rosario Challenger Santo Domingo Challenger Barcelona Open Banc Sabadell - Barcelona Serbia Open - Belgrade Millennium Estoril Open - Estoril Movistar Chile Open - Santiago BB&T Atlanta Open - Atlanta Citi Open - Washington Plava Laguna Croatia Open - Umag Lugano Challenger Delray Beach Open - Delray Beach Open 13 Provence - Marseille Prague 2 Challenger Oeiras 4 Challenger Bordeaux Challenger Sanremo Challenger Grand Prix Hassan II - Marrakech Barcelona Open Banc Sabadell - Barcelona BMW Open - Munich Libema Open - 's-Hertogenbosch Pozoblanco Challenger Istanbul Challenger Orleans Challenger Nottingham 2 Challenger Qatar ExxonMobil Open - Doha Stockholm Open - Stockholm Bratislava 2 Challenger Open Parc - Lyon Banja Luka Open - Banja Luka Brest Challenger Libema Open - 's-Hertogenbosch Moselle Open - Metz Hamburg Open - Hamburg Ismaning Challenger Helsinki Challenger Open de Moselle - Metz Lille Challenger Lugano Challenger Barletta Challenger Nottingham 2 Challenger Bonn Challenger BNP Paribas Masters - Paris PBZ Zagreb Indoors - Zagreb Sony Open Tennis - Miami BNP Paribas Open - Indian Wells BNP Paribas Open - Indian Wells Miami Open - Miami Rogers Cup - Montreal Mutua Madrid Open - Madrid Rogers Cup - Toronto BNP Paribas Open - Indian Wells Apia International - Sydney Internazionali BNL d'Italia - Rome Open Parc - Lyon Rolex Paris Masters - Paris Kremlin Cup - Moscow If Stockholm Open - Stockholm Brisbane International - Brisbane Orleans Challenger Maharashtra Open - Pune Miami Open - Miami TEB BNP Paribas Istanbul Open - Istanbul Abierto Mexicano de Tenis Mifel - Los Cabos Antalya Open - Antalya SAP Open - San Jose European Open - Antwerp ABN AMRO World Tennis Tournament - Rotterdam Sophia Antipolis Challenger Quimper Challenger Vilnius Challenger Heilbronn Challenger Bratislava 1 Challenger Belgrade Open - Belgrade Adelaide International - Adelaide Barcelona Open Banc Sabadell - Barcelona Canberra Challenger BNP Paribas Open - Indian Wells EFG Swiss Open - Gstaad Phoenix Challenger Hellenic Championship - Athens Open Sud de France - Montpellier Citi Open - Washington Segovia Challenger Astana Open - Astana Shanghai Rolex Masters - Shanghai Rolex Paris Masters - Paris Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome BNP Paribas Masters - Paris Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Internazionali BNL d'Italia - Rome BNP Paribas Masters - Paris Open Parc - Lyon Internazionali BNL d'Italia - Rome Rolex Paris Masters - Paris Mercedes Cup - Stuttgart Mutua Madrid Open - Madrid Shanghai Rolex Masters - Shanghai Aircel Chennai Open - Chennai Stockholm Open - Stockholm Miami Open - Miami Gonet Geneva Open - Geneva BNP Paribas Masters - Paris Miami Open - Miami Mutua Madrid Open - Madrid Coupe Rogers - Montreal Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris Western & Southern Open - New York Barcelona Open Banc Sabadell - Barcelona Internazionali BNL d'Italia - Rome Terra Wortmann Open - Halle Generali Open - Kitzbuhel Hangzhou Open - Hangzhou Japan Open Tennis Championships - Tokyo Dubai Duty Free Tennis Championships - Dubai Monte-Carlo Rolex Masters - Monte-Carlo Internazionali BNL d'Italia - Rome Open 13 Provence - Marseille BNP Paribas Open - Indian Wells Miami Open - Miami Rogers Cup - Montreal BNP Paribas Open - Indian Wells Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Mutua Madrid Open - Madrid Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai Monte-Carlo Rolex Masters - Monte-Carlo Monte-Carlo Rolex Masters - Monte-Carlo BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Monte-Carlo Rolex Masters - Monte-Carlo Western & Southern Open - Cincinnati Monte-Carlo Rolex Masters - Monte-Carlo Shanghai Rolex Masters - Shanghai Miami Open - Miami National Bank Open - Toronto Cincinnati Open - Cincinnati Mutua Madrid Open - Madrid Brisbane International - Brisbane Moselle Open - Metz China Open - Beijing German Tennis Championships - Hamburg Rakuten Japan Open - Tokyo Qatar ExxonMobil Open - Doha Open 13 Provence - Marseille Dubai Duty Free Tennis Championships - Dubai French Open - Paris French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York U.S. Open - New York Australian Open - Melbourne Wimbledon - London U.S. Open - New York Australian Open - Melbourne Wimbledon - London U.S. Open - New York French Open - Paris Australian Open - Melbourne French Open - Paris Australian Open - Melbourne Australian Open - Melbourne French Open - Paris Wimbledon - London French Open - Paris French Open - Paris French Open - Paris Wimbledon - London Australian Open - Melbourne French Open - Paris Wimbledon - London French Open - Paris U.S. Open - New York French Open - Paris U.S. Open - New York Wimbledon - London U.S. Open - New York Australian Open - Melbourne Wimbledon - London Australian Open - Melbourne French Open - Paris U.S. Open - New York Wimbledon - London U.S. Open - New York Australian Open - Melbourne U.S. Open - New York Australian Open Qualifying - Doha Australian Open - Melbourne Mutua Madrid Open - Madrid Wimbledon - London Internazionali BNL d'Italia - Rome U.S. Open - New York French Open - Paris Argentina Open - Buenos Aires Internazionali BNL d'Italia - Rome Mallorca Championships - Mallorca U.S. Open - New York Australian Open - Melbourne Davis Cup, Group II, 3R, DEN-BIH 3-2 Davis Cup, Group II, 2R, FIN-BIH 2-3 Davis Cup, Group I, 2R, SVK-BIH 2-3 Davis Cup, World Group I, PO, BIH-RSA 3-1 Davis Cup, Group II, 3R, BIH-LTU 2-3 Davis Cup, World Group, QR, AUS-BIH 4-0 Davis Cup, World Group, PO, SWE-BIH 3-1 Davis Cup, Group I, 1R, PER-BIH 3-2 Davis Cup, Group I, 1R, BIH-POL 5-0 Davis Cup, Group II, 2R, BLR-BIH 4-1 Davis Cup, Group II, 3R, LTU-BIH 0-5 Davis Cup, Group II, 1R, BIH-GRE 3-1 Davis Cup, World Group I, 1R, TPE-BIH 3-2 U.S. Open (juniors) Davis Cup, Europe/Africa Group II, 2R, EST-BIH 2-3 Davis Cup, Europe/Africa Group II, 3R, POR-BIH 3-2 All Lower level tournaments Davis Cup, Group II, 1R, BIH-LUX 4-1 Davis Cup, Group II, 2R, BIH-MDA 1-3 Davis Cup, Group II, 1R, ZIM-BIH 1-4 Davis Cup, Group I, 1R, ECU-BIH 3-2 U.S. Open (juniors) Wimbledon (juniors) Davis Cup, Group I, PO, TUN-BIH 1-3 Davis Cup, Group I, 1R, BIH-MEX 3-1 Davis Cup, Group I, 1R, BIH-GER 0-4 Davis Cup, Group I, PO, BUL-BIH 1-3 Davis Cup, Group I, PO, UZB-BIH 1-3 Davis Cup, Group II, 2R, BIH-TUR 3-1 Davis Cup, World Group, 1R, JPN-FRA 1-4 Davis Cup, Group I, 2R, BIH-NED 1-3 Olympics - Rio de Janeiro Australian Open (juniors) Wimbledon (juniors) French Open (juniors) French Open (juniors) Nonthaburi 1 Challenger Manacor Challenger Aix En Provence Challenger Japan Open Tennis Championships - Tokyo